Skip to main content

Webhook para backup externo

O Webhook Adicional permite enviar automaticamente para um endpoint externo todas as mensagens, status, criações e atualizações de sessões registradas pelo bot. Esses dados são armazenados no banco de dados através do Consumer, e, quando salvos, podem ser enviados simultaneamente para um webhook adicional.

O que será enviado?

Sessões

O webhook enviará dados sobre criação e atualização de sessões. As atualizações incluem a adição de tags, variáveis ou finalização da sessão.

Criação da sessão: Os seguintes dados são enviados no início da conversa:

CampoDescrição
bolIdIdentificador único do bot
sessionIdIdentificador único da sessão
channelCanal utilizado na conversa
contactIdentificação do contato
numberchipNúmero configurado no bot (lado empresa)
createdAtData/hora da criação da sessão

Método: POST

Url: baseUrl/sessions (identificar na criação do projeto) Headers: <label:value> (optional) Payload: { botId, sessionId, channel, contact, numberchip, createdAt }

Atualização de sessões: Sempre que uma sessão for atualizada ou finalizada, os seguintes dados serão enviados:

CampoDescrição
sessionIdIdentificador único da sessão
tagsTags identificadas na sessão
variableAtualização de variáveis durante a sessão
finishedAtData/hora da finalização da conversa
sessionDurationDuração da sessão em milissegundos
finishedIndicativo de finalização ou não da sessão
updatedAtData/hora da atualização corrente

Método: PUT

Url: baseUrl/sessions/:sessionId Payload: { sessionId, finished, finishedAt, sessionDuration, updatedAt, tags, variables, }

Mensagens

Todos os envios de mensagens e atualizações de status serão enviados para o webhook.

Criação de mensagens: Sempre que uma nova mensagem for registrada, os seguintes dados serão enviados:

CampoDescrição
sessionIdIdentificador único da sessão
messageldIdentificação única da mensagem
textTexto (ou link da mídia) da mensagem corrente
typeTipo da mensagem (text, media, etc..)
clientSentIndicativo da direção da mensagem (true se enviada pelo cliente)
whenData/hora do envio

Método: POST

Url: baseUrl/messages Payload: { sessionId, messageId, text, type, clientSent, when }

Status

Criação de status: As atualizações de status das mensagens serão enviadas automaticamente.

CampoDescrição
messageldIdentificação única da mensagem
statusDescritivo do evento de status (sent, read, etc...)
whenData / hora do envio

Método: POST

Url: baseUrl/messages/status/:messageId Payload: { messageId, status, when, }

Eventos

O webhook também captura eventos especiais, como ações de IA, requisições de API e passagens por blocos que contenham tags.

CampoDescrição
eventIdIdentificador único do evento
sessionIdIdentificador único da sessão
typeIdentificador do tipo do evento corrente
valueDescritivo do evento corrente
whenData / hora do evento

Criação de eventos: será enviado toda a vez que um evento é registrado.

Método: POST

Url: baseUrl/event Payload: { eventId, sessionId, type, value, when }

Configuração

Para ativar essa funcionalidade em um bot específico, siga os passos abaixo:

  1. adicione a configuração no Consumer: No arquivo de variáveis de ambiente do Consumer, adicione uma chave com o botId e o endpoint base para envio dos dados.

Image 1

  1. envio automático dos dados: Após essa configuração, sempre que uma sessão ou mensagem for registrada, os dados serão enviados automaticamente para o webhook definido.